package com.zhenta.service;

import com.zhentao.pojo.Appointment;
import com.zhentao.pojo.AppointmentVO;

import java.util.List;

/**
 * 预约挂号服务接口
 */
public interface AppointmentService {

    /**
     * 获取预约挂号列表
     */
    List<AppointmentVO> getAppointmentList();

    /**
     * 根据ID获取预约挂号详情
     */
    AppointmentVO getAppointmentById(Integer id);

    /**
     * 根据就诊人ID获取预约挂号列表
     */
    List<AppointmentVO> getAppointmentsByPatientId(Integer patientId);

    /**
     * 根据状态获取预约挂号列表
     */
    List<AppointmentVO> getAppointmentsByStatus(Integer status);

    /**
     * 创建预约挂号
     */
    boolean createAppointment(Appointment appointment);

    /**
     * 取消预约挂号
     */
    boolean cancelAppointment(Integer id);

    /**
     * 完成预约挂号
     */
    boolean completeAppointment(Integer id);

    /**
     * 更新预约挂号信息
     */
    boolean updateAppointment(Appointment appointment);

    /**
     * 删除预约挂号
     */
    boolean deleteAppointment(Integer id);
} 